|
Lokalizacja w menu |
---|
3D / BIM → Przestrzeń |
Środowisko pracy |
BIM |
Domyślny skrót |
S P |
Wprowadzono w wersji |
0.14 |
Zobacz także |
brak |
Narzędzie Przestrzeń pozwala zdefiniować pustą objętość, opierając ją na bryle, definiując jej granice lub łącząc oba te sposoby. Jeśli jest on oparty wyłącznie na granicach, objętość jest obliczana poprzez rozpoczęcie od obwiedni wszystkich podanych granic i odjęcie przestrzeni za każdą z nich. Obiekt Przestrzeń zawsze definiuje objętość bryły. Można również wyświetlić powierzchnię podłogi obiektu przestrzeni, obliczoną przez przecięcie płaszczyzny poziomej w środku masy objętości przestrzeni.
Obiekt przestrzenny utworzony z istniejącego obiektu bryłowego, a następnie dodane dwie ściany jako granice.
Prawda
, właściwość Moc sprzętu zostanie automatycznie wypełniona przez sprzęt znajdujący się w tej przestrzeni.
Zobacz również: API: Architektura i Podstawy tworzenia skryptów FreeCAD.
Narzędzie Przestrzeń może być używane w makrodefinicjach i z konsoli Python za pomocą następujących funkcji:
Space = makeSpace(objects=None, baseobj=None, name="Space")
Space
z podanego objects
lub baseobj
, który może być
FreeCADGui.Selection.getSelectionEx()
, lub(object, subobjectname)
.Przykład:
import FreeCAD, Arch
Box = FreeCAD.ActiveDocument.addObject("Part::Box", "Box")
Box.Length = 1000
Box.Width = 1000
Box.Height = 1000
Space = Arch.makeSpace(Box)
Space.ViewObject.LineWidth = 2
FreeCAD.ActiveDocument.recompute()
Po utworzeniu obiektu przestrzeni można dodać do niego wybrane powierzchnie za pomocą następującego kodu:
import FreeCAD, FreeCADGui, Draft, Arch
points = [FreeCAD.Vector(-500, 0, 0), FreeCAD.Vector(1000, 1000, 0)]
Line = Draft.makeWire(points)
Wall = Arch.makeWall(Line, width=150, height=2000)
FreeCAD.ActiveDocument.recompute()
# Select a face of the wall
selection = FreeCADGui.Selection.getSelectionEx()
Arch.addSpaceBoundaries(Space, selection)
Granice można również usunąć, ponownie wybierając wskazane ściany:
selection = FreeCADGui.Selection.getSelectionEx()
Arch.removeSpaceBoundaries(Space, selection)